﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Brain.Editor;
using Microsoft.Xna.Framework;

namespace Brain.General
{
    public class CharacterInfo : IGameVariable
    {
        /// <summary>
        /// The Height of Character. Default is 18,
        /// using scale 10:1
        /// </summary>
        public float Height = 18f;

        /// <summary>
        /// The height of the Charater when he's crouching
        /// </summary>
        public float CrouchingHeight = 14f;

        public float Mass = 10f;

        /// <summary>
        /// The Radius of the Character
        /// </summary>
        public float Radius = 3;

        /// <summary>
        /// The name of the character. A key for identifying it
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// The Model used by this Character
        /// </summary>
        public string ModelPlace { get; set; }

        /// <summary>
        /// Offset from the position of the character to the 'eyes' while the character is standing.
        /// </summary>
        public float StandingCameraOffset = .7f;

        /// <summary>
        /// Offset from the position of the character to the 'eyes' while the character is crouching.
        /// </summary>
        public float CrouchingCameraOffset = .4f;

        /// <summary>
        /// The speed of the player when he's zooming
        /// </summary>
        public float ZoomSpeed = 50;

        /// <summary>
        /// The speed of the player when he's walking
        /// </summary>
        public float WalkSpeed = 100;

        /// <summary>
        /// The speed of the player when he's running
        /// </summary>
        public float RunSpeed = 170;

        public CharacterInfo()
        {
        }

        public bool ShouldSerialize { get; set; }
        public void SerializeData(SerializationData parentData, string add)
        {
        }
        public void DeserializeData(SerializationData parentData, string add)
        {
        }


        public void DeserializedAll()
        {
        }
    }
}
